perm filename FORMAT[LSP,JRA]13 blob
sn#294542 filedate 1977-07-13 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00003 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002
C00013 00003 .TURN ON "¬" FOR "%"
C00014 ENDMK
C⊗;
.TURN ON "{#%"
.TURN OFF "-" << Too many minus signs would be mistaken for hyphens. >>
.DEVICE XGP;
.FILL PREFACE 0;<<**************>>
.TENPOINT←FALSE
.If TENPOINT THEN
. START FILL SPACING 24 MILLS END; <<for PHOTO-SETTING 10 point**********>>
. ELSE
.START FILL SPACING 24 MILLS END; << for 12 point**********>>
.comment
.Margin Setting Example
.
.The following example defines a macro that given a page size adjusts the page
.frame to fit font 1 on a page with resonable margins.
.;
.charw←12
.MACRO PAPER_SIZE(X,Y) ⊂ MILL_PAPER_HEIGHT←Y; MILL_PAPER_WIDTH←X; ⊃
.
.VARIABLE PAGE_HEIGHT, PAGE_WIDTH
.
.MACRO MARGINS (εLEFT,εRIGHT,εTOP,εBOTTOM) ⊂ BEGIN GROUP SELECT 1;
. IF MILL_PAPER_HEIGHT ≤ 0 THEN MILL_PAPER_HEIGHT←11000; <<8.5" X 11" DEFAULT>>
. IF MILL_PAPER_WIDTH ≤ 0 THEN MILL_PAPER_WIDTH ← 8500;
.
. BIT_RASTER_WIDTH←(MILL_PAPER_WIDTH*HBPI)/1000;
. BIT_RASTER_HEIGHT←(MILL_PAPER_HEIGHT*VBPI)/1000;
.
. IF LEFT ≥ 0 THEN ODDLEFTBORDER←LEFT ELSE ODDLEFTBORDER←1500;
. IF RIGHT ≥ 0 THEN RIGHTBORDER←RIGHT ELSE RIGHTBORDER←1000;
. IF TOP ≥ 0 THEN TOPBORDER←TOP ELSE TOPBORDER←1000;
. IF BOTTOM ≥ 0 THEN BOTTOMBORDER←BOTTOM ELSE BOTTOMBORDER←500;
.
. EVENLEFTBORDER←ODDLEFTBORDER; XGP_VSP←(MILLSPACING*VBPI)/1000;
.
. PAGE_WIDTH←(BIT_RASTER_WIDTH-(HBPI*(ODDLEFTBORDER+RIGHTBORDER))/1000)/CHARW
. PAGE_HEIGHT←(BIT_RASTER_HEIGHT-(VBPI*(TOPBORDER+BOTTOMBORDER))/1000)
. /(CHARH+XGP_VSP);
.
. hlines←page_height-2;
. wchars←page_width
.
. PAGE FRAME PAGE_WIDTH WIDE PAGE_HEIGHT HIGH
. TITLE AREA HEADING LINES 1 TO 2
. AREA TExT LINES 3 TO PAGE_HEIGHT-2
. TITLE AREA FOOTING LINE PAGE_HEIGHT
. PLACE TExT
. END ⊃;
.area text lines 3 to 47 ;<<**********>>
.HLINES← IF XCRIBL THEN 45 ELSE 53 << 49 NUMBER OF LINES/PAGE >>
.WCHARS← IF XCRIBL THEN 81 ELSE 69 << 81 NUMBER OF CHARS/LINE >>
.comment
.
.!XGPLFTMAR←200
.
.
.PAGE FRAME HLINES+2 HIGH WCHARS WIDE
.AREA TEXTER LINES 4 TO HLINES CHARS 1 TO WCHARS
.TITLE AREA FOOTING LINE HLINES+1 CHARS 1 TO WCHARS
.TITLE AREA HEADING LINES 1 TO 3 CHARS 1 TO WCHARS
.PLACE TEXTER
.;
.VARIABLE SECNAME, SSNAME, SSNUMBER, FOO, CATEGORY;
.VARIABLE FIRST_PAR,par; <<**********>>
.par←6;<<**********>>
.COUNT SECTION;
.COUNT SUBSECTION IN SECTION PRINTING "!.1";
.COUNT APPENDIX;
.MACRO SEC(NAME,ABBREV,PHRASE,LABEL) ⊂
.IF SSNAME ≠ SECNAME THEN FOO←TRUE ELSE FOO←FALSE;
. SSNAME ← SECNAME ← IF "ABBREV"≠NULL THEN "ABBREV" ELSE "NAME";
. SSNUMBER ← (SECTION+1)&"."
. SKIP TO COLUMN 1; LABEL NEXT SECTION!;
. BEGIN
. flush right <<center>>
.GROUP SKIP 3 <<6 ********>>
%2CHAPTER {!}%*
. SKIP 4 <<was blank>>
.NAM←↑"NAME";
.nam1←"name";
.fill;
¬A{nam1}%*
.<<{NAM}%*>>
. SKIP 12;
. CAT("PHRASE","NAME");
.IF FOO THEN SEND CONTENTS ⊂ SKIP 2;
∂4{SECTION!}∂8{NAM}→{PAGE!}{SKIP;⊃
.ELSE SEND CONTENTS ⊂ SKIP ;
∂4{SECTION!}∂8{NAM}→{PAGE!}{SKIP;⊃
. END;
. ⊃
.MACRO SS(NAME,PHRASE,LABEL) ⊂
. SSNUMBER←SECTION!&"."&(SUBSECTION+1);
. SSNAME←"NAME";
. IF LINES≤7 THEN NEXT PAGE;
. LABEL NEXT SUBSECTION!;
. BEGAN
. SKIP 2
. CAT("PHRASE","NAME");
. SEND CONTENTS ⊂
∂(13){!}∂(⊃9)NAME\∞ ∞.
→#{PAGE!}¬
. ⊃¬
. CENTER
.nam←"name";
%2{!}##{nam}%*{
. skip 1;
. END;
. ⊃
.MACRO SSP(NAME,PHRASE,@→β _@%↓4)8M~.&A¬"=α∞|bV69βλ4):≥→!
:j∃ 1∃α"Jε≤) 1
d
⊗1∩I↓DhP4(4Rr6ε∞∀yα∞ε"BB"J
~∃2~j∃%∧J→↓
∧BJεN*⊂n:VdaαR",p4)8LJ→↓
∧BJεN*⊃u
⎇⊂αR"⊗rαN⊗:"α&:∩-ACygZBε≡-pr:εl(wlDhQ8&⊗e~∃αN,r⊃α&t"⊗aπqsnB:↔xr∧BJεN)klD$λh(4)tjε∞JzαJ⊗~-⊃↓"RDJM2RD
Q%¬~⊗:⊃∧J:∩⊗BCyp1≠O↔∀∩αR"ε!bR"&→klEλh(4)t
Q↓λ1I αN∧*∞&~L→↓λ]∩α≡⊗:-∩&
↓∃y @hQ:&→α∩≡⊗:-∩&
λ\rV21¬""⊗8hQ8&N$
JP&≤*:⊃αLr∩⊗a↓βysn∧
≡↔xd:⊗:⊗∀J
1α≥α⊗∞&4JwlY↓
N∧*∞&~L→α≡⊗t*J&
∪Yα⊗: h):⊗e~∀&N$
JP&≤*:⊃αLr∩⊗a↓βysn∧
≡↔xe~B⊗∞L2&wY m↓
≥α⊗∞&4J
m∧*:⊃λh(4)t
Q↓λ3q αN∧*∞&~L→↓λ]∩α≡⊗:-∩&
↓∃y @hQ:&→α∩≡⊗:-∩&
λ\rV21¬""⊗8hQ8&N$
JP&≤*:⊃αLr∩⊗a↓βysn∧
≡↔xd:⊗:⊗∀J
1α≥α⊗∞&4J
βn≤
R⊗≡⎇∩gxwY m↓
≥α⊗∞&4J
α≡,r⊗J&~⊃mα⊗t 4):,bN∀&≥"εJPM~⊗:⊃∧J:∩⊗BCys]αε≡↔qbNB⊗≤J~&
πZ∞εR,:>JgqklEmα∩NB⊗≤J~&
∪Yα⊗:"D4(hQ:6ε≥∩=αN-"∞εR,:>JeE"⊗bQJAα∞
"⊗≡>∃Iα⎇↓∃"⊗bQ∩↓lD4Ph):6~J=α
αA":j∃2ε∀∩J⊗Yeα"Jε≤)22ε∀*1%h)8$M~⊗∞:j∃α⎇∧J→↓
∩
J⊗2⊂n:VdaαR",q↓
ε∀∩J⊗Y∩α⊗2N*↓
:εl) l4Rp$&N≤rV6
-⊃α⎇αu*21lhQ8$&≥~:ε6*α⎇↓
∂βC↔;&Ka↓ 2BεBB,r∩&a[ %l4Rp&N.M↓αR=∧~>2Vlq↓Em∧bε
⊗b↓α:⊗E!αεB∧*:∩&B l4)pH&
⊗<J84)pH&∞⊗u"⊗H4R)JεB∧*:∩&BβmπxhQ8$&≤Z&@4Rr:ε6⎇q
:εl)λ4+\rε7y*P4)8HJN.&α↓L4)pH&∞ε"A
B"∀
N∃ b∩:ε6*⊃%l4Rp$&N,r⊃α∞|rR⊗:%→Aα≤Z&AlhP=Sn
αB⊗:$Jaπx{Cn:εopgnB:∃π{Z↓D4Rp$&⊗t $D4Ph):6~J=α
αBa"t
6∃2∩
J⊗2bB"J
~∃22∩⊗1%↓4)8HJN⊗∞t
6∃αzα&→↓∀
J-1λn:,b1αRD*9↓
∩
J⊗2⊃α⊗2≤)↓
:j∃ lhQ8$&≥~:V6∀*Iα⎇∧rV21Xh)8$M~N:εl)α⎇↓∀CC↔v#'a↓∩1"εB∧*:∩&BYE%lhQ8&N\JAαRzα∞>2,j9↓EZα2ε
,a↓α:T APPENDIX!;
. BEGIN
. CENTER
%2APPENDIX {!}
. SKIP
.NAM←↑"NAME"
{NAM}%*
. SKIP 1
. CAT("PHRASE","NAME");
. SEND CONTENTS ⊂ SKIP;
∂4{APPENDIX!}∂8{NAM}→{PAGE!}{ ⊃
. END ⊃
.MACRO CENT (NAME,PHRASE) ⊂IF LINES ≤ 7 THEN SKIP TO COLUMN 1;;
.CAT("PHRASE","NAME");
.BEGIN CENTER PT24
%2NAME%*
.PT18; END
.⊃
.MACRO SVERBATIM ⊂VERBATIM; SELECT 3 ⊃
.MACRO SAMPLE ⊂SKIP 1; ONCE SVERBATIM ⊃
.COUNT FOOTNOTE INLINE from 1 TO 99 BY 1 IN section printing ⊂"%8#{FOOTNOTE}%*"⊃;
.AT "⊗↓" ENTRY "←" ⊂NEXT FOOTNOTE ; ! ;
.SEND FOOT ⊂
.BEGIN "FOOT"
.FILL
.INDENT par,0;
{!} ENTRY
.BREAK
.END "FOOT" ⊃ ⊃
.MACRO YON (LABEL) ⊂"page#";PAGE! LABEL⊃
.MACRO YONAPP (LABEL) ⊂"Appendix ";APPENDIX! LABEL⊃
.MACRO YONSEC (LABEL) ⊂"Chapter#";SECTION! LABEL⊃
.MACRO YONSS (LABEL) ⊂"Section#";SUBSECTION! LABEL⊃
.MACRO TABLE ⊂ BEGIN
.SKIP 1
.NARROW 2,2; GROUP; TABS 10 ; TURN ON "\" ;
.NOFILL ; PREFACE 0 ; SELECT 4;
.INDENT 0,9 ; BREAK ⊃
.TURN ON "¬" FOR "%"
.FOOTSEP ← "________________"
.SECNAME ← SSNUMBER ← SSNAME ← NULL
.ODD HEADING(¬c{SSNUMBER},,{SSNAME} {PAGE}¬*)
.EVEN HEADING(¬c{PAGE} {SECNAME},,{SSNUMBER}¬*)
.insert prefASS
.INSERT CONTENTS
.portion mainportion;
.COMPACT
.COUNT PAGE TO 999 printing "1";
.NEXT PAGE